<#import "Common.ftl" as zbsgc>
/**
* 版权所有：福建邮科电信业务部厦门研发中心 
*====================================================
* 文件名称: ${fileMeta.daoImplClazzName}.java
* 修订记录：
* No    日期				作者(操作:具体内容)
* 1.    ${date}			    zbsGC(创建:创建文件)
*====================================================
* 类描述： 
* 
*/
package ${fileMeta.daoImplPackage};

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;

import com.devframe.sys.util.page.PageInfo;
import com.devframe.sys.util.assertion.Assert;
import com.fsti.tdap.dao.common.impl.CommonHandleDaoImpl;
import ${fileMeta.daoClazzFullName};

import ${beanMeta.clazzFullName};

@Repository(value="${fileMeta.daoInstanceName}")
public class ${fileMeta.daoImplClazzName} extends CommonHandleDaoImpl<${beanMeta.clazzName}> implements ${fileMeta.daoClazzName}{
   
   /**
	 * 
	 */
	private Object query${beanMeta.clazzName}OfCommon(${beanMeta.clazzName} ${beanMeta.entityName},PageInfo pageInfo){
		StringBuffer hql=new StringBuffer(32);
		hql.append(" FROM ${beanMeta.clazzName} t WHERE 1=1 ")
		  //其他参数
		  .append(" /~ AND t.${beanMeta.idField.fieldName}<= :id  ~/");
		  
		Map<String,Object> params=new HashMap<String,Object>();
		
		params.put("id",${beanMeta.entityName}.${beanMeta.getIdFieldMethodName}());
		//压入其他参数
		return null == pageInfo ? super.getBaseDao().queryForList(hql.toString(), params)
				                : super.getBaseDao().queryForPage(hql.toString(), params, pageInfo);
	}
   
   /**
   分页查询方法
   */
   public PageInfo ${methodMeta.daoQueryPageMethod}(${beanMeta.clazzName} ${beanMeta.entityName},PageInfo pageInfo){
   		//其他操作
		return (PageInfo)this.query${beanMeta.clazzName}OfCommon(${beanMeta.entityName},pageInfo);
   }

   /**
   普通查询方法
   */
   public List<${beanMeta.clazzName}> ${methodMeta.serviceQueryListMethod}(${beanMeta.clazzName} ${beanMeta.entityName}){
   		//其他操作
   		return (List<${beanMeta.clazzName}>)this.query${beanMeta.clazzName}OfCommon(${beanMeta.entityName},null);
   }


	
}
